#ifndef QFONT_H
#define QFONT_H

#include "QOsBase.h"
#include "QSString.h"
#include "QWString.h"

class CFont;
class CQFont
{
public:
	IMPORT_C CQFont(CFont* pFont, QINT32 nFontType);
	IMPORT_C ~CQFont();

	QINT32 GetType() const { return m_nFontType; };
	CFont* GetFont() const { return m_pFont; };
	
	IMPORT_C QINT32 CharWidthInPixels(QUINT16 wChar) const;
    IMPORT_C QINT32 TextWidthInPixels(const CQWString&  aText) const;
	IMPORT_C QINT32 TextWidthInPixels(const CQSString& aString) const;
	IMPORT_C QINT32 TextWidthInPixels(LPCWSTR aText,int alength) const;
	//IMPORT_C QINT32 TextWidthInPixels(const TPtrC16&  aText) const;
	IMPORT_C QINT32 HeightInPixels() const;
	//IMPORT_C QINT32 HeightInTwips() const;
	IMPORT_C QINT32 AscentInPixels() const;
	
	
	IMPORT_C QBOOL ResetFont(CFont* pFont,QINT32 nFontType);

private:
	CFont* m_pFont;
	QINT32 m_nFontType;
};

#endif //QFONT_H